﻿namespace Ayatta.Contract.Domain
{
    /// <summary>
    /// User
    /// </summary>
    public class User : IEntity<int>
    {
        /// <summary>
        /// Id
        /// </summary>
        public int Id { get; set; }

        /// <summary>
        /// Guid
        /// </summary>
        public string Guid { get; set; }

        /// <summary>
        /// 用户名
        /// </summary>
        public string Name { get; set; }

        /// <summary>
        /// 昵称
        /// </summary>
        public string NickName { get; set; }

        /// <summary>
        /// 密码
        /// </summary>
        public string Password { get; set; }

        /// <summary>
        /// 支付密码
        /// </summary>
        public string PayPassword { get; set; }

        /// <summary>
        /// 角色
        /// </summary>
        public UserRole Role { get; set; }

        /// <summary>
        /// 等级
        /// </summary>
        public UserLevel Level { get; set; }

        /// <summary>
        /// 限制
        /// </summary>
        public UserLimit Limit { get; set; }

        /// <summary>
        /// 许可
        /// </summary>
        public UserPermission Permission { get; set; }

        /// <summary>
        /// 绑定邮箱
        /// </summary>
        public string Email { get; set; }

        /// <summary>
        /// 绑定手机
        /// </summary>
        public string Mobile { get; set; }

        /// <summary>
        /// 状态 1为正常 0为锁定
        /// </summary>
        public bool Status { get; set; }

        /// <summary>
        /// 版本号
        /// </summary>
        public byte[] Version { get; set; }

        /// <summary>
        /// UserProfile
        /// </summary>
        public virtual UserProfile Profile { get; set; }

        /// <summary>
        /// UserExtra
        /// </summary>
        public virtual UserExtra Extra { get; set; }

    }
}